Business decision makers often use business intelligence analytical software tool to pose operational performance questions as queries against their data sources. The business intelligence analytical tool is often implemented in a server-client architecture. The analytical tool often includes a client that provides a user interface, for example, a client browser; and a server that handles processing of queries and retrieval of data from data sources.
In order to analyze business performance, users often need to navigate through data in reports generated by the analytical tool. Each new request from the user results in a new response being sent to the client from the server and rendered in the browser. This causes significant interactions between the client and server. Each interaction between the client and server requires time to provide the requested information to the client and users may not be able to perform sufficient business performance analysis if these time periods exceed the expectations of a highly interactive environment.
It is therefore desirable to provide a mechanism for providing business intelligence information from the server to the client more efficiently.